package controllers

import (
	"github.com/goravel/framework/contracts/http"
	"goravel/app/services"
)

type NotificationController struct {
	// Dependent services
}

func NewNotificationController() *NotificationController {
	return &NotificationController{
		// Inject services
	}
}

// Index 通知列表
// @Summary      通知列表
// @Tags         Notification
// @Router       /notification [get]
func (c *NotificationController) Index(ctx http.Context) http.Response {
	return services.NewApiService(ctx).OK("Index")
}

// Show 通知详情
// @Summary      通知详情
// @Tags         Notification
// @Router       /notification [get]
func (c *NotificationController) Show(ctx http.Context) http.Response {
	return services.NewApiService(ctx).OK("Show")
}

// Store 新增通知
// @Summary      新增通知
// @Tags         Notification
// @Router       /notification [post]
func (c *NotificationController) Store(ctx http.Context) http.Response {
	return services.NewApiService(ctx).OK("Store")
}

// Update 更新通知
// @Summary      更新通知
// @Tags         Notification
// @Router       /notification/{id} [put]
func (c *NotificationController) Update(ctx http.Context) http.Response {
	return services.NewApiService(ctx).OK("Update")
}

// Destroy 删除通知
// @Summary      删除通知
// @Tags         Notification
// @Router       /notification/{id} [delete]
func (c *NotificationController) Destroy(ctx http.Context) http.Response {
	return services.NewApiService(ctx).OK("Delete")
}
